﻿#静态页面的渲染


"""
urls文件

urlpatterns = [
    url(r'^admin/', admin.site.urls),
]

正则表达形式

管理员站点登陆页面   在127.0.0.1:8000/admin

可以添加/更改更改
例：

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^hello/',views.hello),
]

url(r'^hello/',views.hello),
路径127.0.0.1:8000/hello
使用views文件内hello函数（不加括号）
HttpResponse("6666666") 相应返回字符串“66666”


然后在App文件内的Views文件内写入代码

"""




"""
代码：
from django.shortcuts import render
from django.http import  HttpResponse

def hello(request):
    return HttpResponse("6666666")


创建视图函数hello()，默认参数是request


先引入HttpResponse
创建函数，参数为接受的用户请求
返回相应中的参数


"""

"""
from webpage import views
写入urls文件，把views文件包含进urls
"""


"""
实现过程总结：
    实现一个请求：
        -注册一个路由
            urls中
               -url
                   -参数1 匹配规则 正则匹配
  	       -视图函数
		    -对应的是VIEWS中的一个函数  （没有括号）
        -去views中，实现对应的视图函数
	    -第一个参数是request(固定)
	    -永远返回response中的一个子类或response

"""




"""
HttpResponse用法举例:
HttpResponse("123456789")
HttpResponse("<h1>233333333<h1>")

"""




"""
在项目中（APP）创建templates文件夹（名字固定）

在templates内可以创建html文件


返回html文件相应：
def index(request):
    return render(request,'index.html')
两个参数：第一个为请求参数，第二个参数为html页面

模板的第一种使用方式
找到setting文件中的INSTALLED_APPS 注册app
加入'App'

TemplateDoesNotExist at /index/ ... (丢失这一步会报错)

python3 manage.py runserver 0.0.0.0:8000 运行服务并且提供给所有人进行访问




模板的另一种使用方法（推荐方法）：
在项目的最上层目录（hellodjango）创建文件夹templates（名字同样固定）
在内部新建html网页
（丢失后续步骤报错）
这时则需要进入setting中的TEMPLATES
TEMPLATES -》'DIRS'
在DIRS中添加--->  os.path.join(BASE_DIR,'templates')
BASE_DIR代表当前工程路径。（动态获取）
'templates'代表templates绝对路径


"""



"""
解决views中代码乱的问题：
python manage.py startapp Two
创建另一个项目 Two
并且在setting文件内注册
在第二个项目内创建另一个Python文件，文件名称为urls

from django.shortcuts import render
from django.http import  HttpResponse
导包


Two/views.py:

from django.shortcuts import render
from django.http import  HttpResponse

# Create your views here.

def index(request):
    return HttpResponse('xxx')



在根路由中写入url(r'tow/',include('Two.urls'))
url(r'路径名/',include('urls文件路径'))

Two/urls.py
from django.conf.urls import url
from Two import views

urlpatterns = {
    url(r'^index/', views.index),
}


访问：
http://127.0.0.1:8000/tow/index/
http://127.0.0.1:8000/子路径/路径文件/

"""

"""
总结：

模板配置：
两种：
	在App中进行模板配置
	只需在App的根目录穿件templates文件夹即可
	如果想让代码自动提示应该标记文件夹为模板文件夹

	在项目目录中进行模板配置
	需要在项目目录中创建templates并标记
	需要在settings中进行注册	

	在开发中使用第二种
	原因：模板是可以继承的，复用

	路由器优化配置
	项目如果逻辑过于复杂，可以进行拆分
	拆分为多个App
	继续拆分路由器urls
		在App中创建自己的urls
			-urlpatterns路由规则列表
			-在根urls中进行子路由的包含
		子路由使用：
			跟路由规则+子路由规则




"""


























